23

» WarCraft 3 / Предмет=способность

Похожие вопросы:

ответ
Так ты же выключаешь триггер на 18 секунд вот он и не срабатывает.
Поставь условие, что герыч не имеет абилки-пустышки, если не имеет - дать её и через 18 сек забрать и пустить молнию.
Правда я не уверен насчёт того, отловится ли attacking unit через 18 сек вейта, проверь...
Вообще, если устраивает орбом - то даёшь "сферу молний" с эффектом "цепь молний", у которой 18 сек перезарядка(у цепи не у сферы)
ответ
тут может быть только триггерный вариант
Да. Через дамми-юнита.
ответ
WW перестаёт становиться DIS, когда у героя более одной абилки WW
типа что бы ты мог активировать другой, пока работает первый... но разблокировка идёт на все сразу (и на сам себя тоже)
ответ
TeX13, можно, сделано в доте для варкравта...
Способов реализации много, от 'ANeg' (способность механика, Enginering Upgrade, рус-Техника), которым можно свапать скиллы, до таймеров которые будут удалять способность у героя а потом вручать ему снова, таким образом скидывая кулдаун, ну и так же хак на пямять, с помощью которого можно менять кулдаун как захочется, щяс все кому не лень юзают эту наработку.
ответ
настройки - игра - детальные подсказки

23

» WarCraft 3 / Вопрос по группам джасс

Похожие вопросы:

ответ
Я бы на вашем месте использовал "Custom Script", то есть вставил локальные переменные на языке jass. Вышло бы приблизительно так:
Вот рабочий триггер. Никаких глобальных переменных. Работает со множествами игроков и юнитов. Не тормозит карту.
В условиях: (Ability being cast) равно "Здесь поставь способность которая применяется на юнита"
Описываю действия:
  1. Создаем локальную переменную юнита
  2. Даем юниту на которого применяется способность "Невидимость", способность "Змеиная ловкость"
  3. В локальную переменную юнита вписываем юнита на которого применена способность
  4. Ждем тридцать секунд, то есть столько времени, сколько у юнита будет доп. способность "Змеиная ловкость"
  5. По истечении времени забираем у юнита доп. способность "Змеиная ловкость"
В пятой строке 'AEev' - это код способности "Змеиная ловкость"
Если что-то не понятно - обращайся.
Напоминаю - триггер полностью играбельный!
К комментарию добавляю карту с рабочим триггером:

23

» Администрация XGM / помогите

Похожие вопросы:

ответ
Насколько мне известно, здесь аниме спелпаков нету та и моделей не очень много не много людей тут любят аниме. Поищи на хайве там должны быть
ответ
Все,сам разобрался. :)
ответ
Объединил, если что там не взлетело — мне в личку любым способом
ответ
Напиши автору - Эльрат
ответ
Может вас ещё кокаин научить нюхать?
Статья 227 УК РФ. Пиратство


И не в том разделе вопрос задан, к тому же

23

» StarCraft 2 / Волны атаки

Похожие вопросы:

ответ
EfReeZe, соответственно, попробуй поставить первый. Если не поможет - напомни мне завтра вечером или на выходных - найду немного времени и посмотрю в редакторе.

23

» WarCraft 3 / длительность способности

Похожие вопросы:

ответ
Эта способность, если не ошибаюсь, заставляет снаряд лететь обратно к стрелку после попадания (типа пауки укусили и возвращаются к хозяину).
ответ
качай прогу редактор JNGP там высоту молний можно ставить!
вот карта пример
ответ
вышеуказанные проникают сквозь всё, а сферы - это обычные касты Roar, battleroar и че-то там еще, они прерывают юнита, но 0.0 каст таймы сглаживают
ответ
Razor_dex:
Это понятно))) я имею в виду как настроить в РО канал, что бы он также не обрывался, у меня он почему то работает как молот бурь, кастанет и прервется
ответ
а что мешает переделать морф иллидана

23

» WarCraft 3 / ИИ

Похожие вопросы:

ответ
вопросы типа сделайте за меня не принимаются
по поводу того как это делать написано здесь xgm.guru/p/wc3/articles
ответ
BrEd Pitt, что значит использовать
берёшь и создаёшь юнитов для резервного игрока а потом отдаёшь им приказ
ответ
Возможно listfile.txt повредился.
Перекачай его.
ответ
есть событие - юнит получает урон. в нём отслеживается как жертва, так и наносящий урон. можно хоть через хэш, хоть через структуру Юнита записывать всё, что угодно. Кто от кого конкретно сколько получил урона, кто кому сколько нанёс, сколько провисел на ком-то бафф яда и т.п. (Сначала был loop, а теперь периодический триггер). Каждые N секунд, перебираешь всех юнитов в массиве или списке, и отслеживаешь всё, что надо.
Структура - Unit. У неё есть двойной список с юнитами и уроном от яда (полученным или нанесённым - зависит от того, у кого будет этот список - у жертв или у тех, кто наносит яд). Типа DoubleList. В DoubleList есть элементы DoubleElement. В каждом таком элементе записаны unit и real (урон от яда от этого юнита). При получении урона от яда перебирается список, если юнит уже есть, урон от него (или ему) прибавляется. Если нет, то создаётся новый элемент с новым юнитом.
Периодически у нужных юнитов эти списки перебираются. Всё.
ответ
Diazon, прочти статьи по массивам/структурам
после чего юзай двухмерные массивы/поля-массивы

23

» WarCraft 3 / Редактор моделей

Похожие вопросы:

ответ
в mdlvis можно модель увеличить
ответ
Открываешь РО, смотришь указанный путь модели. Открываешь редактором MPQ-архивов файлы War3.mpq, war3x.mpq, war3patch.mpq war3xlocal.mpq - не уверен.
ответ
вот сделал ее уменьшеной ,посори через модель эдитор как я эт сделал
если модел едитор неоткроет скачай нормальный
ответ
возможно русские символы в пути до программы или в названии модели
ответ
По идее редакторы через реестр должны найти путь к игре и оттуда подгружать текстуры.

23

» WarCraft 3 / Иконки мультиборда

Похожие вопросы:

ответ
на мультиборде юзаются стандартные иконки
присвой переменной string путь до иконки и впихивай в борду на здоровье

23

» WarCraft 3 / Вопрос на засыпку.

Похожие вопросы:

ответ
ConditionToMove - берет юнита, возвращает условие (true - юнит может двигаться, false - не может)
Я так понимаю, последний параметр в строке вызова функции на False поменять, чтобы не двигался. Вар с ЖНГП глючит, нет возхможности проверить.
ответ
Никак, очень сложное заклинание (близзарды пряма изощрялись и собирали совещание, как бы это сделать посложнее - Dracolich(c))
Там бафф по сути триггер с особым событием которое запилили специально для этой способности - юнит потерял ману от каста заклинания, до него можно добраться с помощью мемхака - но костыльно и сложно.
Баши и криты можно отловить косвенно, по получению урона \баффа. Но это ненадежный способ, атака обрабатывается в момент замаха и движок узже знает попадет юнит или промажет, забашит или кританет по цели, еще за долго до самого удара. Поэтому самый рациональный способ - триггерные аналоги этих пассивок - крит, ну тупо перед атакой вручает абилку крита со 100% шансом и усе, баш так же. Особо изворотливые могут сделать детект физического урона и сделать баш из дамми каста молотка бурь (нам же надо только отловить сам факт удара) ну а крит посложнее, но тоже вполне реализуемо.
ответ
~8gabriel8:
Это событие срабатывает лишь при старте карты, чтобы сделать срабатывание, когда после потасовки остаётся один юнит, логично было бы сделать событие Generic unit Умирает. В условии учитываются не только живые юниты, но и их трупы, пока не разложатся, то есть будет срабатывать событие юнит Умирает, в условии юнитов в области будет больше 1, так как будут считаться мёртвые юниты, триггер так и не будет срабатывать, если через минуту какой-то юнит на карте не умрёт. Потому в условии нужно указывать не просто юнитов в области, а юниты в области matching condition, где поставишь (Matching unit) is alive равно Да. А чтобы не учитывались здания и призванные юниты, нужно вместо условия (Matching unit) is alive равно Да выбрать в низу списка And, появится два условия, в первое ставишь (Matching unit) is alive равно Да, во второе опять And и аналогично выбираешь, (Matching unit) is Здание равно Нет и что-то такое же на призванных (summon).
Только в действии тоже укажи, что живой, не Здание и не призванный, а то кого-то из них может убить.
ответ

upd: на скрине идет строгая проверка на равенство 9.0, вероятность срабатывания которой крайне мала потому как мана это не целое число, хоть и отображается в интерфейсе как целое.

Рекомендуемая мной реализация - использовать дополнительный индикатор для проверки того что юнит уже создан и проверять не равна ли мана максимальному значению. Например выдавать зданию пассивную способность-пустышку, отмечающую здание как такое у которого уже есть юнит и пока эта способность у здания есть, не создавать нового сколько бы маны ни было.

23

» WarCraft 3 / Стак яда

Похожие вопросы:

ответ
nvc123, Я ее случайно удалил
ответ
на 26 патче это без тригов невозможно
с тригами - система выдачи баффов и скрытые спеллбуки с нужными способностями и их выдача нужным юнитам на нужное время
также в карте замок скиби есть аура, эффекты которой суммируются, но она опять таки триггерная
ответ
Например так, чтобы основная химера не имела яда вообще, а яд накладывали даммики, вот и получится тоже самое (в самых малых требованиях)
ответ
Стандартный скилл "Оживший огонь".
ответ
Делать триггерные аналоги, это орбы, они на уровне движка
Есть там некоторые типы эффектов, которые стакаются
xgm.guru/p/wc3/attackmod в общем вот

23

» WarCraft 3 / Не могу открыть карту

Похожие вопросы:

ответ
Способ есть.
Но для этого нужен Warcraft 3 и редактор.
Итого:
  • открываешь редактор,
  • открываешь в нем карту
  • клацаем F9 или просто Проверку карты (там иконка самая последняя в строчке, красная галочка)
  • Profit...
Внимание! Не все карты так можно открыть, некоторые защищенные и открытию в редакторе не подлежат, а если их восстановить, то они не всегда работоспособны.
ответ
N7 Molot:
создавай пустую модель (dummy) дай ему способности москит, неуязвимость, невосприимчивость к магии, затем через триггер задай максимальную скорость анимации, затем через анимацию задай что бы он проиграл анимацию смерти (death) и через 0,01 секунду задай скорость анимации 100%.
ответ
гадание
скорее всего эта карта не автора, и автор где-нибудь скачал или попытался взломать. А потом открыл карту с помощью стандартного редактора WE. И у него пишет: не удалось открыть файл основной карты. Эта самая распространенная ошибка. Такая ошибка есть при открытии защищенной карты.
также помню скачивал карту одну с хгм, и не мог открыть. Но открылась только в JNGP. Опен дота с хмг тоже не открывалась в WE, сейчас проверил, вроде открывается.
Еще пример один был связан с UMS плагином. Знакомый скинул карту. Но у меня не открывалась даже с JNGP. а дело было в UMS. в редакторе JNGP есть кучу плагинов, которые снимают ограничение карты, точнее обычного стандарт. редактора. Если в карте, сохраненная в JNGP, вышли за ограничения, то обычный редактор это может не открыть. Мб из-за этого.
ответ
Trickster, ну так будет 100р?
В карте испоганен заголовок и хешьтаблица и удалены данные об обьектах, поэтому она не открывается ничем кроме зезулы, но зезула не дает возможность редактировать файлы. Ну собственно я это дело снял, могу восстановить открываемость в редакторе..

23

» WarCraft 3 / Ошибка при открытии карты

Похожие вопросы:

ответ
Карта запротекчена.
ответ
DesiMorti, и пусть удалят всё лишнее из папки с вар3
не удивлюсь если у них там русификатор валяется
ответ
JNGP добавляет в РО скрытые модельки/иконки, а FNWE заменяет файлы, где указаны имена этих файлов.
Перенеси этот файл в папку UI с заменой.
ответ
Попробуй отключить триггеры, для начала, и затем проверь, запустится ли карта в игре. Особенно те, которые были созданы/редактированы относительно недавно до появления фатала.
ответ
Карта запротекчена, или не соответствие версии

23

» WarCraft 3 / Движение без поворота

Похожие вопросы:

ответ
мне мои вопросы кажуться легко решаемыми
это только кажется
реально это тот ещё геморрой
попробуй сам реализовать пункт 4 (имхо самый простой из всего)
ответ
Всё, разобрался, вопрос снимаю)

23

» WarCraft 3 / Кнопка постройки здания

Похожие вопросы:

ответ
Ухаха. Парень, ознакомься, что такое утечки, прикрепление в помощь.
ответ
На ГУИ это делается без всякого custom script, ищешь раздел Игра и там Force UI Key.
Вообще, в ГУИ же поиск текста есть. Мог бы сам найти.
ответ
Yury13, вроде должно нормально работать в мультиплеере. Но возможны подводные камни.
Вот отредактировал, откомментировал каждую строчку. Красиво и норм. Теперь можно отследить открытие меню или закрытие (сворачивание). Если переделать хэш-таблицу и на хэндл записывать данные.
Есть недостаток с отрядами: когда выделяешь несколько юнитов, и переключаешь на раба. То рабом можно вызвать меню. А затем если взять и кнопкой Tab переключить например на след выделенного в отряде, то система до сих пор будет считать, что меню остается открытой (система: юнит то выделен, все впорядке). Тогда у вас работник будет подсвечиваться радиус, в то же время вы переключены на другого юнита в отряде - что есть не очень хорошо. Я не смог ничего такого найти с переключениями, даже не знаю как это исправить (возможно придется отказаться работать в группе во время стройки). Вроде драколич в мемхаке давно скидывал код на выделенного юнита, могу скинуть? но мемхаком больше не хочу заниматься
ответ
Есть другой способ скрыть ВСЕ кнопки.
Buttonpos=0,-11
не обязательно юзать текстовик, чтобы скрыть меню, можно попробовать в самих абилках "строительство" задать положение x,y - 'AHbu'/'AObu'/'AUbu'/'AEbu'/'AGbu'/'ANbu'

23

» WarCraft 3 / Игровые зоны.

Похожие вопросы:

ответ
Kind Ram:
Если у юнита тип перемещения включён на "нет", но есть скорость перемещения, он будет перемещаться сквозь любые объекты. Если же у него перемещение стоит "летающий", то его могут заблочить только воздушные юниты и воздушные блокираторы пути. Но в случае с летающим типом, это станет заметно как он "плавно" взбирается на вертикальные стены рельефа.
ответ
orc01, хм... Ладно, попробую сейчас.
Всё, нашёл как нужно было сделать
Через то же что и первый раз делал, только выбрал всех юнитов игрока красного, то есть - одного героя. И сразу все стало нормально)
ответ
8gabriel8, стандартные порталы как раз включаются триггером, так же триггерно им можно назначать области телепорта, так же они не ломают карту путей.
Насчет упираются в здание, карту путей ставь от портала, физ размер в 0.
ответ
Альфа канал (есть статья на сайте), нестандартная шарообразная модель неба (модель есть на сайте) и правильный туман.
ответ
Так что лучше теперь юзать?)
Отключаемый триггер с общим событием, который включается когда есть нужные юниты и отключается когда их нет.

23

» WarCraft 3 / Импорт текстуры с помощью Retera's Model Studio

Похожие вопросы:

ответ
Vova47, отредактируй путь к текстуре при помощи Mdlvis.
ответ
Скорее всего никак. Если в импорте указать стандартный путь текстуры, то она заменится и будет недоступна.
ответ
  1. Узнаёшь точный путь стандартной текстуры, которую ты будешь заменять на свою.
Это можно сделать используя любой MPQ-вьювер, вскрывая War3.mpq ты начинаешь поиск в папке TerrainArt.
  1. Импортируешь текстуру по этому пути, изменяя имя новой текстуры, на имя заменяемой. И готово )
У меня есть пример, где я это уже делал. В этой карте:
ответ
~8gabriel8:
Оригинально) Круто, что работает.
По идее нужно не mdx открывать в Блокноте, а пересохранить модель в формат mdl и открывать в Блокноте её. Файлы tga являются просто другим форматом текстур, который используется в игре. Если слишком много весят, можешь перевести в blp, но считается, что у tga качество получше.
ответ
все файлы и их пути которые ты указал в менеджере импорта будут заменять такие же файлы по тому же пути которые есть в архиве игры

23

» WarCraft 3 / Импорт DISBTN

Похожие вопросы:

ответ
Пути импорта хранятся внутри карты в файле .imp, который имеет бинарный формат. Соответственно, чтобы это заработало, надо добавить кнопку в меню по нажатию которой будет происходить импорт через отдельную тулзу:
  • импортирует файлик в mpq архив карты
  • извлекает файлик .imp
  • добавляет настройки этой кнопки в этот файлик
  • импортирует файлик .imp
Вот и все, так что можете подучить какой-нибудь язык простенький, хотя бы делфи и вперед!)
ответ
~8gabriel8:
BattleMaster, укажи имена:
BTNBT
DISBTNBT
Потом в редакторе объектов проверь путь к BT, скорее всего надо будет поменять на BTNBT.

23

» WarCraft 3 / Массивы и номера игроков

Похожие вопросы:

ответ
Получите, распишитесь.
немного кода
globals
  integer udg_p_i = 1
  player array udg_p
endglobals
function int takes nothing returns nothing
local integer i = 1
  loop
    exitwhen i  > 10
    if GetPlayerSlotState(Player(i)) == PLAYER_SLOT_STATE_PLAYING then
      set udg_p[udg_p_i]=Player(i)
      set udg_p_i = udg_p_i + 1
    endif
    set i = i + 1
  endloop
endfunction
function cd takes nothing returns nothing
  local integer i = 1
  local integer cap = 0
  loop
    exitwhen i > udg_p_i
    set cap = (5+LoadInteger(udg_hash, GetHandleId(udg_Player[GetPlayerId(udg_p[i])]), 2))
    if GetHeroXP(udg_Player[GetPlayerId(udg_p[i])) < cap then
      call AddHeroXP( udg_Player[GetPlayerId(udg_p[i]), 20, false )
    endif
    set i = i + 1
  endloop
endfunction
Я так понял что статьи не помогут.
функцию int() вызови при инициализации
P.S.
Помогите сделать так, чтобы действия выполнялись не по циклу
ахахах, тогда закомменти пару строк)
тебе нужно создать соответствующие глобалки вручную
функция cd() это и есть функция которая должна быть в твоем действии
Если что непонятно, спрашиваем -_-
ответ
Одна и та же переменная в одном вызове функции не может принимать разные значения. Почему нельзя использовать две переменные?
Я вообще не очень понимаю, что ты хочешь сделать такой функцией. Опиши ситуацию, пожалуйста.
ответ
Вопрос решён. Не нужно ничего сортировать. Мне нужно было 3 первых места. Я просто в цикле сравнимал позицию данного игрока в ледербоарде с нужной мне позицией.
ответ
Должно работать:
function GetRandomPlayerIndex takes nothing returns integer
    set udg_Buf_A = 0
    set bj_forLoopAIndex=0 //red
    set bj_forLoopAIndexEnd=10  //light blue
    loop
        exitwhen(bj_forLoopAIndex>bj_forLoopAIndexEnd)
        if(GetPlayerSlotState(Player(bj_forLoopAIndex))==PLAYER_SLOT_STATE_PLAYING)and(GetPlayerController(Player(bj_forLoopAIndex)))==MAP_CONTROL_USER)and(udg_AccEmpPlayer[bj_forLoopAIndex]==false)then
                set udg_PlayersPlay[udg_Buf_A]=Player(bj_forLoopAIndex)
                set udg_Buf_A=(udg_Buf_A+1)
        endif
    set bj_forLoopAIndex=bj_forLoopAIndex+1
    endloop
    set udg_Random=GetRandomInt(0,udg_Buf_A)
    set udg_RndPlayer=udg_PlayersPlay[udg_Random]
    return udg_RndPlayer
endfunction
ответ
Это не удаление, а присвоение. Ты смотрел реализацию из первого комментария?

Сделал, написал комменты, разберёшься.

23

» WarCraft 3 / Летают части моделей.

Похожие вопросы:

ответ
Причина: причин было много, а я искал лишь одну
Самыми распространёнными оказались элементарные ошибки в коде, отсутствие параметров, параметры не того типа данных (привет динамическая типизация) или лишние параметры, из за чего происходили "рандомные рассинхроны при обрыве потока"
Огромное спасибо пользователю prog, что откликнулся и смог найти ошибки, а нашёл он их при помощи языкового сервера sumneko lua для VScode

23

» WarCraft 3 / Высота камеры

Похожие вопросы:

ответ
pas logique:
Гигамон- Спасибо!
В триггерах тип действий "Камера". Если конкретно расстояние до цели надо поменять, то "Камера - Установить Поле Камеры (Время)" ("Камера - Set Camera Field (Timed)").
ответ
Вероятнее всего, ты повышаешь камеру выше скайбокса.
Вероятные решения проблемы:
а) Уменьшить самих юнитов и стилизовать ланд под маленькие модели.
б) Вставить нестандартный скайбокс с огромным размером.
(я бы выбрал первый вариант, потому что он круче)
ответ
CRASHmaster:
Привет. Посмотри эту карту (версию 4.00): xgm.guru/forum/showthread.php?p=355988, в ней вроде подобная проблема решена. Но я подробно не изучал сам.
к сожалению, не решена. Чем выше юнит забирается на холм, тем выше камера становится над юнитом.
ответ
Ну так берем и делаем, в чем проблема то? Элементарный триггер же? Взяли подрстроку из введенного в чат сообщения и настроили камеру.

23

» StarCraft 2 / Как создать мод

Похожие вопросы:

ответ
сначала создай библиотеку, а уже в библиотеке создавай триггеры.
vk.com/z_lamberg пиши, если вопросы есть

23

» WarCraft 3 / Система войн при нападении на игрока.

Похожие вопросы:

ответ
Meddin, меняй цели заклинания
всё работает просто у тебя руки не от туда
аффтару
без триггеров никак
делаем пустышку на основе канала
и при касте проверяем является ли цель врагом
если да то наносим урон
если нет то хилим
подробнее можешь прочесть там
ответ
никак, ты говоришь о несовместимых модификаторах
ответ
В условии триггера прописать, что входящий юнит (Entering unit) == тот юнит, который нужен.
ответ
Вам нужно изучить в редакторе звука как сделаны озвучки стандартных юнитов, тогда поймете по какому принципу формируются пакеты озвучки из отдельных файлов. Самый простой вариант - менять дефолт на импорт, карта Funny Bunny egg hunt от близзардов в помощь, это наглядное пособие по импорту озвучки и не только.
ответ
Frostfall, тебе уже показывали, как это сделать вот здесь.

Сделал ещё способ, не через апгрейд, а через морф.
С тёмным будет так же, но скорее всего не нужно будет исправлять анимацию.

Я хотя бы правильно начал?
Да.

А что, разве уничтожить группу и почистить - разное для триггера?
Конечно, очистить группу - сделать группу пустой, а уничтожить - удалить сам объект типа "группа". Уничтожение в GUI недоступно, только через Custom Script, смотри карты, что я кидал.